Larocheに基づくBayerデモザイキングアルゴリズム

概要

ファイル: \examples\Processing\Color\Bayer\Laroche_original_maVCL.va

デフォルトプラットフォーム: mE5-MA-VCL

簡単な説明

Larocheに基づくBayerデモザイキングアルゴリズム

Larocheら[Lar94]によれば、ベイヤーパターンの赤、緑、青のピクセル値[Bay76]は、次のアルゴリズムを使用して外挿できます。

補間ステップ 1

最初のステップでは、すべての緑のピクセル値(輝度値)が水平方向および垂直方向の色差勾配を使用して外挿されます ( および )。勾配は次を使用して定義されます カーネル:

式 8.


は、緑の値を補間する必要があるピクセル上の 色差値(赤または青)です。 緑の は、 赤と青のピクセル位置で次のように求められます:

式 9.


補間ステップ 2

補間された輝度から、不足している赤と青のピクセル値を計算できます[Lar94]。 赤ピクセル上の青、または青ピクセル上の赤:

式 10.


赤行内の緑ピクセル上の青、または青行内の緑ピクセル上の赤:

式 11.


および、青行内の緑ピクセル上の青、および赤行内の緑ピクセル上の赤:

式 12.


ここで、 は決定する必要があるカラー値の赤 または青です。 赤、緑、および青のピクセルにおける赤、緑、青の値は、ベイヤーパターン入力画像からのものです。

VisualAppletsデザイン

完全なアルゴリズム(\examples\Processing\Color\Bayer\Laroche_original_maVCL.va)は、microEnable 5 フレームグラバー(marathon)用の VisualApplets デザインに実装されています。 その基本的なデザイン構造は、 図 245「基本的なデザイン構造」に示されています。HierarchicalBoxes 画像 および OutputToPC のコンテンツは、 基本的な取り込みデザインと同等です。例については、以下を参照してください。 'Basic Acquisition Examples for Camera Link Cameras for marathon Frame Grabbers'。HierarchicalBox 内では、 WhiteBalancing の例と同等のホワイトバランスが 'Bayer 5x5 Demosacing with White Balancing' 実行されます。 図 246「Bayer デモザイキングプロセスの補間ステップ 1」 を 図 248「HierarchicalBox BlueAndRed のコンテンツ」 ボックス BayerFilter のコンテンツが詳細なコメントとともに示されています。図 246「Bayer デモザイキングプロセスの補間ステップ 1」 では、勾配が および に従って計算されます 式 8赤および青のピクセルにおける緑の値は、次に従って決定されます。 式 9.

基本設計構造

図 245. 基本的なデザイン構造


Bayer デモザイキングプロセスの補間ステップ 1

図 246. ベイヤーデモザイキングプロセスの補間ステップ 1


では、 図 247「ColourInterpolation のコンテンツ」 HierarchicalBox ColourInterpolation のコンテンツが表示されます。HierarchicalBox GreenOut では、現在位置が赤または青のピクセルである場合、補間ステップ 1 の緑の値が出力緑値として決定されます。それ以外の場合、つまり現在位置が緑のピクセルである場合、出力緑値は Bayer パターンからの入力緑値となります。位置の決定は、以下で行われます。 WhereAmI RedOrBlue Modulo-、AND-、NOT-、および NotEqual-演算子を使用して。HierarchicalBox 内 BlueAndRed すべての赤および青の値は、入力のベイヤーパターンから( カーネル)を使用して補間され、緑の値は次の条件に従って補間されます 式 9。 では 図 248「HierarchicalBox BlueAndRed のコンテンツ」 階層ボックスの内容を確認できます BlueAndRed 補間ステップ 2 を伴います。FPGA 上のリソースを節約するため、同期は個別のカーネルではなく、カーネル値の合計に対して実行されます。最後に(参照 図 247「ColourInterpolation のコンテンツ」)、IF-演算子を使用して RedOut および BlueOut 計算された赤および青の値が、HierarchicalBox 内で決定された対応するピクセル位置に割り当てられます WhereAmIColour (類似 WhereAmI RedOrBlueを使用します。

ColourInterpolation のコンテンツ

図 247: ColourInterpolation のコンテンツ


HierarchicalBox BlueAndRed のコンテンツ

図 248: HierarchicalBox BlueAndRed のコンテンツ


Bayerデモザイキングプロセスの結果

では、 図 250「Laroche らのアルゴリズムでデモザイク処理された画像 [Lar94]」 元の人工カラー画像と比較して、実装されたアルゴリズムによるベイヤーデモザイク処理の結果を確認できます(図 249「元のカラー画像」) およびバイリンガル補間アルゴリズムでデモザイク処理された画像、VA標準の オペレーター Bayer5x5 (図 251: バイリンガルアルゴリズムでデモザイク処理された 画像を使用します。

元のカラー画像

図 249: 元のカラー画像


Larocheらのアルゴリズムでデモザイク処理された画像

図 250: Larocheらのアルゴリズムでデモザイク処理された画像[Lar94]


バイリンガル 5\times 5 アルゴリズムでデモザイク処理された画像

図 251: バイリンガルアルゴリズムでデモザイク処理された 画像


その結果、 補間方法と比較して、ジッパー効果や偽色のアーチファクトが軽減されていることがわかります。